package com.ereconquista.web;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

import com.ereconquista.dao.TipoUsuarioDAO;
import com.ereconquista.modelo.TipoUsuario;
import java.io.Serializable;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;

/**
 *
 * @author Claudio
 */
@ManagedBean 
@SessionScoped
public class TipoUsuarioBean implements Serializable{

    private TipoUsuarioDAO tipoUsuarioDAO;
    private List<TipoUsuario> lista;
    
    /** Creates a new instance of LocalidadBean */
    public TipoUsuarioBean() {

    }

    @PostConstruct
    private void init(){
        tipoUsuarioDAO = new TipoUsuarioDAO();
        lista = tipoUsuarioDAO.getLista();
    }

    //-------------------------------------------------------------------------

   
    
    public Converter getConverterTipoUsuario(){
        
        return new Converter() {

            @Override
            public Object getAsObject(FacesContext context, UIComponent component, String value) {
                if (value.trim().equals("") || value == null) {
                    return null;
                }
                
                TipoUsuario t = tipoUsuarioDAO.getTipoUsuario(value);
                return t;
            }

            @Override
            public String getAsString(FacesContext context, UIComponent component, Object value) {
                if (value == null || value.equals("")) {
                    return "";
                } else {
                    return ((TipoUsuario) value).getCodigo() + "";
                }
            }
        };
    }

    public TipoUsuarioDAO getTipoUsuarioDAO() {
        return tipoUsuarioDAO;
    }

    public void setTipoUsuarioDAO(TipoUsuarioDAO tipoUsuarioDAO) {
        this.tipoUsuarioDAO = tipoUsuarioDAO;
    }

    public List<TipoUsuario> getLista() {
        return lista;
    }

    public void setLista(List<TipoUsuario> lista) {
        this.lista = lista;
    }    
}
